package com.ctshk.rpc.air.req;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalTime;
import java.util.List;

@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "AirFlightAddReq对象", description = "新增航班信息Req")
public class AirFlightAddReq implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "航空公司名称",required = true)
    private String companyName;

    @NotNull(message = "航空公司id不能为空")
    @ApiModelProperty(value = "航空公司Id",required = true)
    private Long companyId;

    @ApiModelProperty(value = "代码",required = true)
    private String flightCode;

    @ApiModelProperty(value = "航班号",required = true)
    private String flightNumber;

    @NotNull(message = "出发城市id不能为空")
    @ApiModelProperty(value = "出发城市id",required = true)
    private Long depCityId;

    @ApiModelProperty(value = "出发城市名称",required = true)
    private String depCityName;

    @NotNull(message = "到达城市id不能为空")
    @ApiModelProperty(value = "到达城市id",required = true)
    private Long arrCityId;

    @ApiModelProperty(value = "到达城市名称",required = true)
    private String arrCityName;

    @NotNull(message = "起飞机场id不能为空")
    @ApiModelProperty(value = "起飞机场id",required = true)
    private Long depAirportId;

    @ApiModelProperty(value = "起飞机场",required = true)
    private String depAirportName;

    @NotNull(message = "到达机场id不能为空")
    @ApiModelProperty(value = "到达机场id",required = true)
    private Long arrAirportId;

    @ApiModelProperty(value = "到达机场",required = true)
    private String arrAirportName;

    @ApiModelProperty(value = "起飞时间",required = true)
    private LocalTime depTime;

    @ApiModelProperty(value = "到达时间",required = true)
    private LocalTime arrTime;

    @ApiModelProperty(value = "船舱等级集合",required = true)
    private List<AirFlightCabinData> airFlightCabinDataList;

    @ApiModelProperty(value = "行李规定",required = true)
    private String baggageStates;

    @ApiModelProperty(value = "机型",required = true)
    private Long airplaneType;

    @ApiModelProperty(value = "机型名稱",required = true)
    private String airplaneName;


}
